SeekBar是一種可以通過滑動在一個範圍內調整值,最常見的用法就是調整音量、調整亮度等,馬上來看看SeekBar可以怎麼做使用吧
SeekBar 的一些重要属性和方法包括:
seekbar的監聽事件可以分為三種,我們直接看程式碼
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        // 進度值發生變化時觸發
    }
    @Override
    public void onStartTrackingTouch(SeekBar seekBar) {
        // 按住seekbar時會觸發
    }
    @Override
    public void onStopTrackingTouch(SeekBar seekBar) {
        // 放開seekbar時會觸發
    }
});
下面就來做一個簡單的範例:
SeekBar的屬性:
<SeekBar
        android:id="@+id/seekBar"
        android:layout_width="378dp"
        android:layout_height="30dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="40dp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:max="100" />
程式碼:
public class MainActivity extends AppCompatActivity {
    private TextView textView;
    private SeekBar seekBar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = findViewById(R.id.textView);
        seekBar = findViewById(R.id.seekBar);
        seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int i, boolean b) {
                // 進度值發生變化時觸發
                textView.setText(i + " / 100");
            }
            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
                // 按住seekbar時會觸發
                Toast.makeText(MainActivity.this,"已按住SeekBar",Toast.LENGTH_SHORT).show();
            }
            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                // 放開seekbar時會觸發
                Toast.makeText(MainActivity.this,"已放開SeekBar",Toast.LENGTH_SHORT).show();
            }
        });
    }
}
